/**
  ******************************************************************************
  * @file   : System_config.h
  * @brief  : Header for System_config.c
  * @author : Mentos Seetoo
  ****************************************************************************** 
**/

#ifndef SYS_CONFIG_H
#define SYS_CONFIG_H

/* Includes ------------------------------------------------------------------*/
#include "FreeRTOS.h"
#include "task.h"
#include "queue.h"
#include "main.h"
#include "SRML.h"

/* Exported function declarations --------------------------------------------*/
#ifdef  __cplusplus
extern "C"{
#endif

void System_Task_Init(void);
void System_Resource_Init(void);

/* Macro Definitions ---------------------------------------------------------*/
#define Tiny_Stack_Size 64
#define Small_Stack_Size 128
#define Normal_Stack_Size 256
#define Large_Stack_Size 512
#define Huge_Stack_Size 1024
#define PriorityVeryLow 1
#define PriorityLow 2
#define PriorityBelowNormal 3
#define PriorityNormal 4
#define PriorityAboveNormal 5
#define PriorityHigh 6
#define PrioritySuperHigh 7
#define PriorityRealtime 8

extern CAN_HandleTypeDef hcan1;
extern CAN_HandleTypeDef hcan2;

extern SPI_HandleTypeDef hspi5;
extern DMA_HandleTypeDef hdma_spi5_rx;
extern DMA_HandleTypeDef hdma_spi5_tx;

extern TIM_HandleTypeDef htim2;
extern TIM_HandleTypeDef htim3;
extern TIM_HandleTypeDef htim12;
extern TIM_HandleTypeDef htim13;

extern UART_HandleTypeDef huart7;
extern UART_HandleTypeDef huart8;
extern UART_HandleTypeDef huart1;
extern UART_HandleTypeDef huart2;
extern UART_HandleTypeDef huart3;
extern UART_HandleTypeDef huart6;
extern DMA_HandleTypeDef hdma_uart8_tx;
extern DMA_HandleTypeDef hdma_usart1_rx;
extern DMA_HandleTypeDef hdma_usart2_tx;
extern DMA_HandleTypeDef hdma_usart2_rx;
extern DMA_HandleTypeDef hdma_usart3_tx;
extern DMA_HandleTypeDef hdma_usart6_tx;

#ifdef  __cplusplus
}
#endif                                


#endif
/************************ COPYRIGHT(C) SCUT-ROBOTLAB **************************/
